perm filename PROBLE[206,JMC] blob sn#005321 filedate 1971-01-05 generic text, type T, neo UTF8
00100	examples, exercises, exam problems, and projects
00200	
00300	1. Basic LISP.
00400	alt, fancy alt, (indebted to Allen Newell for this example)
00500	subst, equal, member, sublis, path, adjoin, append,
00600	union, intersection, difference, Cartesian product,
00700	differentiation (2 term and multi-term sums and products),
00800	maplist,andlis, orlis,  exactness of differential equation,
00900	canonical forms of ( polynomials, boolean expressions, 
01000	rational functions, conditional expressions)
01100	elementary simplifications syntax directed,
01200	elementary compilation syntax directed,
01300	elementary I-O syntax directed,
01400	various sorts, multiplication of permutations and elements
01450	of the group algebra,
01500	
01600	2. Projects.
01700		a. For mathematicians:  Equivalence of
01800	two dimensional manifolds, computation of homology
01900	groups of simplicial manifolds, factorization of
02000	algebraic integers, factorization of polynomials with large
02100	integers as coefficients and also factorization over
02200	algebraic number fields, computation of representations
02300	of groups, computation of Galois groups, compute representation
02400	of symmetric functions in terms of elementary symmetric
02500	functions, generalize this to polynomials invariant under
02600	a group of permutations,
02700	
02800		b. For hackers and computer  scientists:  Hash  facility  for
02900	LISP,  specs  of  LISP  1.7,  a  good syntax directed system, a truly
03000	optimal compiler, solve the functional argument problem,
03100	improve Quam I-O, better interactive facilities,
03200	better numerical computation, better library, LISP 2,
03300	a LISP system suitable for all purposes, e.g. with good
03400	imbedded ALGOL and machine language and facilities for
03500	handling packed data and a variety of storage control
03600	mechanisms.
03700	invariant hash,
03800	
03900		c. Applications: Better MATHLAB, resolution
04000	package,  integration proof checker,
04100	MATHLAB at Stanford, trigonometric identity proof checker,
04200	contour integration proof checker,
04300	improvements to REDUCE (e.g. better matrix package, better
04400	matrix inversion, better error messages, (call Hearn),
04500	improved simplification heuristics), display of mathematical
04600	exprssions and their entry using the display (Hearn)
04700	Collins gcd for polynomials, Berlekamp algorithms,
04800	
04900	
05000	3. Theory
05100	recursion induction problems
05200	alt pair[x,y] = x
05300	x*[y*z] = [x*y]*z
05400	reverse reverse x = x
05500	reverse x*y = [reverse y] * [reverse x]
05600	andlis[x*y,p] = andlis[x,p] ∧ andlis[y,p]
05700	
05800	correctness of elementary compiler
05900	
06000	where does and where must lisp spend its time